﻿// 过敏症 ALLERGY.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>

/*
* https://algospot.com/judge/problem/read/ALLERGY
* 
* 问题：
你想邀请n个朋友参加一个聚会。你正在考虑要提供哪些m种食物，但每个朋友都有因为过敏而不能吃的食物，所以不能随便准备任何食物。假设已经给出了能够制作的食物列表以及不能吃某种食物的朋友列表，格式如下：

朋友	牛肉炖菜	比萨	炒面	炒年糕	糖醋里脊	盐煎鸡
Chaelin	x	o	o	o	x	x
Bom	x	x	x	x	o	o
Dara	o	x	o	x	o	x
Minji	o	o	x	x	x	o

为了确保每个朋友至少能吃到一种食物，至少需要准备多少种食物？在上述情况下，由于没有共同可以吃的食物，最终需要准备两种或两种以上的食物。例如，比萨和糖醋里脊，或者炒面和盐煎鸡，这样才能让每个人都能吃到食物。请编写一个程序，在给定朋友的信息的情况下，计算至少需要制作的菜品数量。

输入：
输入的第一行是测试用例的数量T（T <= 50）。每个测试用例的第一行包含朋友数量n（1 <= n <= 50）和已知的食物数量m（1 <= m <= 50）。接下来一行包含n个字符串，表示每个朋友的名称。朋友的名称是由最多10个小写字母组成的字符串。然后，按行给出每种食物的信息。每种食物的信息包括可以吃这种食物的朋友数量和每个朋友的名称。

假设每个朋友至少可以吃一种食物。

输出：
对于每个测试用例，打印一行，表示需要准备的最少食物数量。

示例输入：
2
4 6
cl bom dara minzy
2 dara minzy
2 cl minzy
2 cl dara
1 cl
2 bom dara
2 bom minzy
10 7
a b c d e f g h i j
6 a c d h i j
3 a d i
7 a c f g h i j
3 b d g
5 b c f h i
4 b e g j
5 b c g h i

示例输出：
2
3
*/
int main()
{
    std::cout << "Hello World!\n";
}

 